import { connect } from 'react-redux'

import Count from '../components/Count'

// 把redux数据过滤之后传递个Count组件
function mapStateToProps(state) {
  console.log(state) // state是redux中所有的数据
  return {
    // 这个对象中写了什么,Count组件就可以通过props接收到什么
    c: state.count,
  }
}

// 是把dispatch藏起来(其实就是封装一个新的函数,新函数里面调用了dispatch)
function mapDispatchToProps(dispatch) {
  // connect函数会将return的对象通过props传递给Count组件,并且不会再给Count直接传递dispatch了
  return {
    inc: function (num) {
      dispatch({ type: 'increment', num })
    },
  }
}

export default connect(mapStateToProps, mapDispatchToProps)(Count)
